1. Field of the Invention
The invention relates to a method of correcting a block of code symbols which is divided into a first series of first code words of a first maximum distance separable code as well as into a second series of second code words of a second maximum distance separable code. Each correct code word of a code has a minimum distance with respect to any other correct code word of at least three, taken over the symbols. All non-redundant code symbols form part of a first code word as well as of a second code word.
2. Prior Art
A method of this kind is disclosed in the previous European patent application No. 156 440 (PHQ 84 008C) which is based on two Japanese patent application 84/57595/6. Therein, the maximum distance separable (MDS) code is formed by a (shortened) Reed-Solomon code, but other codes organized on the basis of symbols can also be used. A symbol is a group formed by a fixed number of bits, larger than one; preferably, said number each time amounts to eight bits. Use is often made of systematic codes at the symbol level where a separation exists between redundant and non-redundant symbols; however, the invention is not restricted thereto. The known system concerns the storage of digital data according to the so-called "Compact Disc" format for high-quality audio data whose reliability is further enhanced for given applications, for example for the storage of computer software. In the known system the data is first decoded in the same way as customarily performed for audio data, the redundancy of two Reed-Solomon codes being used for the correction of errors and also for the detection of further errors which cannot be corrected or which can probably not be corrected. These Reed-Solomon codes utilize an interleaving technique which is suitable for the correction of long burst errors and which can be advantageously executed on a real-time basis. Moreover, at the code block level or the sector level there is provided a pseudo-product code which can utilize error detection of the first two codes as pointer information in order to render the further error correction more reliable. This means that the relevant decoding per symbol requires at least one additional bit. Sometimes increasing this transfer bit width is a drawback.
In given other applications of the code of the kind set forth, such pointer information may even be absent, either because the decoding of the first two codes does not produce such pointer information or because such interleaving code is absent because the code is used in a different environment. For a minimum distance between the code words of three or more, taken over the symbols, per code word always one symbol will be correctable per se, but the risk of incorrect correction rapidly increases as the length of the code words increases. For a minimum distance larger than three, the risk of incorrect correction is smaller, but still remains significant in the case of long code words (comprising many symbols).